﻿using System;
using System.Collections.Generic;

namespace Ndns.ServerHost.Abstractions.Features
{
    public interface IFeatureCollection : IEnumerable<KeyValuePair<Type, object>>
    {
        bool IsReadOnly { get; }
        object this[Type key] { get; set; }
        int Revision { get; }
        TFeature Get<TFeature>();
        void Set<TFeature>(TFeature instance);
    }
}
